/*
 * TimeIncrementFixedCycleStrategy.h
 *
 *  Created on: Jan 28, 2012
 *      Author: godinho
 */

#ifndef TIMEINCREMENTFIXEDCYCLESTRATEGY_H_
#define TIMEINCREMENTFIXEDCYCLESTRATEGY_H_

#include <controller/TimeIncrementCalculationStrategy.h>

class TimeIncrementFixedCycleStrategy : public TimeIncrementCalculationStrategy {
public:
    TimeIncrementFixedCycleStrategy();
    virtual ~TimeIncrementFixedCycleStrategy();

    virtual void start(localview::LocalView* lv, int phaseId, int timestep);

    virtual void stop();

    virtual Case* run(localview::LocalView* lv, int phaseId, int timestep);

    virtual void onStop();

    virtual std::string getStrategyId();

private:
    Case* mCase;

};

#endif /* TIMEINCREMENTFIXEDCYCLESTRATEGY_H_ */
